package com.docmgmt.mvp.dto;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.time.LocalDateTime;

/**
 * 文件分享VO
 *
 * @author Dora
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class FileShareVO {

    /**
     * 分享ID
     */
    private Long id;

    /**
     * 文件ID
     */
    private Long fileId;

    /**
     * 文件名（用于我的分享列表）
     */
    private String fileName;

    /**
     * 分享码
     */
    private String shareCode;

    /**
     * 分享URL
     */
    private String shareUrl;

    /**
     * 是否有密码保护
     */
    private Boolean hasPassword;

    /**
     * 过期时间
     */
    private LocalDateTime expireTime;

    /**
     * 是否已过期
     */
    private Boolean isExpired;

    /**
     * 是否允许下载
     */
    private Boolean allowDownload;

    /**
     * 访问次数
     */
    private Integer viewCount;

    /**
     * 下载次数
     */
    private Integer downloadCount;

    /**
     * 最大下载次数
     */
    private Integer maxDownload;

    /**
     * 创建时间
     */
    private LocalDateTime createdAt;
}
